#include <stdio.h>
#include <limits.h>
#include <float.h>

int main()
{
    //%lu 为 32 位无符号整数
    printf("char          存储大小 : %lu \n", sizeof(char));
    printf("unsigned char 存储大小 : %lu \n", sizeof(unsigned char));
    printf("int           存储大小 : %lu \n", sizeof(int));
    printf("long          存储大小 : %lu \n", sizeof(long));

    printf("----------------------------\n");
    //%E 为以指数形式输出单、双精度实数
    printf("float 存储最大字节数 : %lu \n", sizeof(float));
    printf("float 最小值: %E\n", FLT_MIN);
    printf("float 最大值: %E\n", FLT_MAX);
    printf("精度值: %d\n", FLT_DIG);

    printf("double 存储最大字节数 : %lu \n", sizeof(double));
    printf("double 最小值: %E\n", DBL_MIN);
    printf("double 最大值: %E\n", DBL_MAX);
    printf("精度值: %d\n", DBL_DIG);

    return 0;
}